package com.guavestudios.fnfo.plugins {
	import com.guavestudios.fnfo.api.IFnfoPlugin;
	import com.guavestudios.fnfo.Fnfo;
	import flash.events.Event;
	
	/**
	 * ...
	 * @author maze
	 */
	public class BasicFnfoPlugin implements IFnfoPlugin{
		
		protected var _fnfo:Fnfo;
		protected var _pluginId:String;
		
		public function BasicFnfoPlugin() {
			
		}
		
		/* INTERFACE com.guavestudios.fnfo.api.IFnfoPlugin */
		
		public function initPlugin(fnfo:Fnfo):void {
			_fnfo = fnfo;
			_fnfo.addEventListener(Fnfo.INITIALIZE, fnfo_initialize);
			_fnfo.addEventListener(Fnfo.DISPLAY_DATA, fnfo_display_data);
			_fnfo.addEventListener(Fnfo.SHOW, fnfo_show);
			_fnfo.addEventListener(Fnfo.HIDE, fnfo_hide);
			_fnfo.addEventListener(Fnfo.RESIZE, fnfo_resize);
			_fnfo.addEventListener(Fnfo.GATHER_DATA, fnfo_gatherData);
			
		}
		
		protected function fnfo_gatherData(e:Event):void {
			
		}
		
		protected function fnfo_resize(e:Event):void {
			
		}
		protected function printInfo(desc:String, value:String):void {
			_fnfo.printInfo(desc, value);
		}
		protected function fnfo_hide(e:Event):void {
			
		}
		
		protected function fnfo_show(e:Event):void {
			
		}
		
		protected function fnfo_display_data(e:Event):void {
			
		}
		
		protected function fnfo_initialize(e:Event):void {
			
		}
		
		/* INTERFACE com.guavestudios.fnfo.api.IFnfoPlugin */
		
		public function get pluginId():String {
			return _pluginId;
		}
		
	}

}